(nnchoke-retrieve-groups GROUPS &optional
SERVER)The return value of this function can be either
active or group, which says what
the format of the result data is. The former is in the same
format as the data from nnchoke-request-list,
while the latter is a buffer full of lines in the same format
as nnchoke-request-group gives.
group-buffer = *active-line / *group-status
(nnchoke-request-update-info GROUP INFO &optional
SERVER)nil value (exceptionally,
nntp-request-update-info always returns
nil not to waste the network resources).
There should be no result data from this
function.
(nnchoke-request-type GROUP &optional
ARTICLE)news
if article in group is news,
mail if it is mail and unknown if
the type can't be decided. (The article parameter
is necessary in nnvirtual groups which might
very well combine mail groups and news groups.) Both
group and article may be
nil.
There should be no result data from this
function.
(nnchoke-request-set-mark GROUP ACTION &optional
SERVER)action is a list of mark setting requests, having this format:
(RANGE ACTION MARK)
range is a range of articles you wish to update
marks on. action is add or
del, used to add marks or remove marks
(preserving all marks not mentioned). mark is a
list of marks; where each mark is a symbol. Currently used
marks are read, tick,
reply, expire, killed,
dormant, save,
download, unsend,
forward and recent, but your back
end should, if possible, not limit itself to these.
Given contradictory actions, the last action in the list
should be the effective one. That is, if your action contains
a request to add the tick mark on article 1 and,
later in the list, a request to remove the mark on the same
article, the mark should in fact be removed.
An example action list:
(((5 12 30) 'del '(tick))
((10 . 90) 'add '(read expire))
((92 94) 'del '(read)))
The function should return a range of articles it wasn't able to set the mark on (currently not used for anything).
There should be no result data from this
function.
(nnchoke-request-update-mark GROUP ARTICLE
MARK)nil or any other type
of garbage.
The only use for this I can see is what
nnvirtual does with it—if a component
group is auto-expirable, marking an article as read in the
virtual group should result in the article being marked as
expirable.
There should be no result data from this
function.
(nnchoke-request-scan &optional GROUP
SERVER)There should be no result data from this
function.
(nnchoke-request-group-description GROUP
&optional SERVER)
description-line = name <TAB> description eol
name = <string>
description = <text>
(nnchoke-request-list-newsgroups &optional
SERVER)
description-buffer = *description-line
(nnchoke-request-newgroups DATE &optional
SERVER)message-make-date by default). The data should
be in the active buffer format.
It is okay for this function to return “too
many” groups; some back ends might find it cheaper to
return the full list of groups, rather than just the new
groups. But don't do this for back ends with many groups.
Normally, if the user creates the groups herself, there won't
be too many groups, so nnml and the like are
probably safe. But for back ends like nntp,
where the groups have been created by the server, it is quite
likely that there can be many groups.
(nnchoke-request-create-group GROUP &optional
SERVER)There should be no return data.
(nnchoke-request-expire-articles ARTICLES
&optional GROUP SERVER FORCE)nil,
all articles should be deleted, no matter how new
they are.
This function should return a list of articles that it did not/was not able to delete.
There should be no result data returned.
(nnchoke-request-move-article ARTICLE GROUP SERVER
ACCEPT-FORM &optional LAST)This function should ready the article in question for
moving by removing any header lines it has added to the
article, and generally should “tidy up” the
article. Then it should eval
accept-form in the buffer where the
“tidy” article is. This will do the actual
copying. If this eval returns a
non-nil value, the article should be
removed.
If last is nil, that means that
there is a high likelihood that there will be more requests
issued shortly, so that allows some optimizations.
The function should return a cons where the
car is the group name and the cdr
is the article number that the article was entered as.
There should be no data returned.
(nnchoke-request-accept-article GROUP &optional
SERVER LAST)nil,
that means that there will be more calls to this function in
short order.
The function should return a cons where the
car is the group name and the cdr
is the article number that the article was entered as.
The group should exist before the back end is asked to accept the article for that group.
There should be no data returned.
(nnchoke-request-replace-article ARTICLE GROUP
BUFFER)There should be no data returned.
(nnchoke-request-delete-group GROUP FORCE
&optional SERVER)There should be no data returned.
(nnchoke-request-rename-group GROUP NEW-NAME
&optional SERVER)There should be no data returned.